Visual presentation system which determines length of time to present each slide or transparency

ABSTRACT

A system determines display durations of each of a plurality of images in a presentation based on a respective amount of the information content in the image, the greater the information content the longer the display time. There are various techniques for determining the information content of each of the images. For example, the system determines for each image the number of pixels at each of a multiplicity of respective pixel levels and the total number of pixels at one or more pixel levels for which the respective number(s) of pixels are significantly larger than the numbers of pixels at the other pixel levels. The pixels represented by these one or more pixel levels likely represent background or other mundane information. Consequently, only the pixels at the other values are considered as containing important information and their total number represents the total information content of the image. Another technique is to count the number of alphanumeric characters in an alphanumeric image as a measure of the information content in the image. A third technique is to digitially compress the image and compare the size of the compressed image to the size of the uncompressed image as a measure of the information content.

BACKGROUND OF THE INVENTION

The invention relates generally to visual presentation systems, anddeals more particularly with a technique for determining how long topresent each visual slide or transparency.

For many types of presentations, it is desirable to employ visual aids.The visual aids may take the form of slides, images generated on a videodisplay monitor, images generated by a video projector or transparencieswhich are displayed with an overhead projector. There are severalpreviously known systems for controlling the visual presentations. Awell known slide carousel can be filled with slides, individuallydisplayed on a screen with a projector, and advanced or regressed at anytime with a manual switch. The operator determines how long to present;each slide. IBM Storyboard and AVC programs are used to define a listand sequence of video images and then display them. The Storyboard andAVC programs can automatically advance from image to image in thesequence according to display durations written in the program or canwait for a manual cue from the operator to advance. In the former case,the user defines the display duration for each image before presentationbegins.

In the foregoing prior art, at some time a user determines how long todisplay each image. However, in many applications it is desirable toscientifically determine how long each image should be displayed.

Accordingly, a general object of the present invention is to provide asystem which determines an optimum duration for displaying each of amultiplicity of images in a visual presentation.

SUMMARY

The invention resides in a method and system for determining displaydurations of each of a plurality of images in a presentation. First, thesystem determines an information content of each of the images. Then,the system determines, for each of the images, a display duration basedon a respective amount of the information content in the image, thegreater the information content the longer the display time.

There are various techniques for determining the information content ofeach of the images. For example, the system determines for each imagethe number of pixels at each of a multiplicity of respective pixellevels and the total number of pixels at one or more pixel levels forwhich the respective number(s) of pixels are significantly larger thanthe numbers of pixels at the other pixel levels. The pixels representedby these one or more pixel levels likely represent background or othermundane information. Consequently, only the pixels at the other valuesare considered as containing important information and their totalnumber represents the total information content of the image.

Another technique is to count the number of alphanumeric characters inan alphanumeric image as a measure of the information content in theimage. A third technique is to digitally compress the image and comparethe size of the compressed image to the size of the uncompressed imageas a measure of the information content.

According to other features of the invention, the system enforces aminimum and maximum limit for the display duration of each of theimages, and adjusts the display durations of the images to obtain auser-selected total display time for all the images.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a block diagram of a computer system according to the presentinvention.

FIG. 2 is a flow chart of an image analyzer program shell within thecomputer system of FIG. 1.

FIGS. 3(a,b,c) form a flow chart of one embodiment of a specific imageanalyzer program within the image analyzer program shell of FIG. 2.

FIGS. 4(a,b) form a flow chart of one embodiment of an initial portionof a display time converter program within the computer system of FIG.1.

FIG. 5 is a flow chart of another embodiment of an initial portion of adisplay time converter program within the computer system of FIG. 1.

FIG. 6(a,b) form a flow chart of a final portion of the display timeconverter program within the computer system of FIG. 1.

FIG. 7 is a flow chart of another specific image analyzer program withinthe image analyzer program shell of FIG. 2.

FIG. 8 is a flow chart of another specific image analyzer program withinthe image analyzer program shell of FIG. 2.

FIG. 9 is a flow chart of another specific image analyzer program withinthe image analyzer program shell of FIG. 2.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the Figures in detail wherein like reference numbersindicate like elements throughout the several views, FIG. 1 illustratesa video presentation system generally designated 10 which determinesdurations that respective images in a visual presentation should bedisplayed. System 10 comprises an image digitizer 12, a programmedcomputer 14, a video display monitor 16 and a keyboard 18. The imagedigitizer may comprise an optical scanner for digitizing an existingimage, a drawing program such as CorelDRAW which digitizes an imagestored in a memory, or images created by a slide show generation programsuch as Storyboard. The resultant digitized image is in the form of a2-dimensional array of pixels, each pixel represented by specific bitswithin a binary data file. The digitized images are stored on a magneticdisk or optical CD ROM and loaded into the computer 14. The computer 14includes a random access memory 20 which then stores the digitizedimages in an order for analysis by CPU 22. CPU 22 is programmed by animage analyzer program 24 to determine the amount of information in eachof the images. The result is passed to a display time converter program30 to determine the length of time that each image should be displayedbased on the amount of information in the respective image. The greaterthe information content, the longer the image is displayed. A videocontroller 32 fetches each of the digitized images from RAM 20 andcontrols their display on monitor 16 according to the display durationsdetermined by the display time converter 30. By way of example, thevideo controller comprises a program used to display images on the videodisplay. The video controller uses a list of images and respectivedisplay times as input, the display time for each image being suppliedas an input parameter.

FIG. 2 illustrates the beginning of the image analyzer program 24 inmore detail. In step 100, the display time converter program asks theuser to input values (via the keyboard) for the following parametersaffecting the determination of the presentation duration for each image:

TIME--a desired total presentation time for all images combined.

ERROR--maximum acceptable difference between specified presentation time"TIME" and actual total presentation time.

MINDISP--a minimum display time for any single image.

MAXDISP--a maximum display time for any single image.

MINACC--As described below, a histogram is formed with each "bar"representing the number of pixels at a respective pixel value. Theheight of each bar represents the number of pixels exhibiting therespective pixel value. The "bars" are arranged in descending order ofcount number. MINACC is the minimum difference in count betweensuccessive "bars" deemed sufficient to separate the mundane/backgroundinformation from the important information. In effect,, differences lessthan MINACC are deemed statistically insignificant.

SEARCHLEN--number of pixel values to examine when seeking to identifythe mundane, background information. SEARCHLEN is typically 5% of thetotal number of pixel values.

N--total number of images in the presentation.

Next, program 24 initializes an image parameter K to one to indicate thefirst image in the presentation (step 104). Then program 24 reads theimage indicated by the image parameter K, at this time the first image(step 106). Next, program 24 calls the weight determination program 24ato estimate the information content of the image (step 108). Accordingto the present invention, there are different embodiments of the weightdetermination program which determine the information content indifferent ways.

FIG. 3(a-c) illustrates in detail one embodiment of the weightdetermination program 24a, called a "histogram analyzer" routine. Ingeneral terms, the histogram routine determines the amount ofinformation in an image based on a constant value minus the number offrequently occurring pixel values. These frequently occurring pixelvalues are presumed to represent mundane objects such as backgroundlevel in a text or graphics image or sky in a pictorial image andtherefore include little important information. The histogram counts thenumber of pixels at each pixel value and the final counts at thedifferent pixel values represent "bars" of the histogram. The pixel"value" is the gray level in the case of a black and white image or acolor or intensity level in the case of a color image.

First, the histogram routine initializes a parameter "J" representingeach pixel in a current image and sets a counter equal to zero (step142). Next, the histogram routine reads the value of the first pixel inthe current image (step 144) and increments a "J" field corresponding tothe pixel value (step 146). There is one "J" field for each possiblepixel value and each "J" field represents a "bar" in the histogram.Next, the histogram routine determines if this is the last pixel in theimage (decision 150). (Each image has a predetermined number of pixels.)Steps 144, 146 and 150 are repeated in a loop until the values of allpixels in the image are noted in the corresponding "J" field. Next, thehistogram routine sorts the "J" fields based on final counts, and linksthem in descending order of the respective counts, i.e. the number ofpixels at each pixel value (step 154). For example, if there are morepixels having a particular pixel value X than any other single pixelvalue, then the "J" field representing pixel value X is first after thesort is completed and the count of this "J" field becomes the "height"of the "bar" for pixel value X. If another pixel value Y represents thesecond highest number of pixels, then this pixel value Y is second afterthe sort is completed and the count value at pixel value Y becomes theheight of the "bar" for the pixel value Y.

Next, the histogram routine initializes a maximum differencevariable--MAXDIFF, a chopping point variable--CHOPPOINT, and count valueH (step 158). Next, the histogram routine determines the difference infinal count values between the first and second "bars" in the orderedhistogram, i.e. between "bar" H and "bar" H+1 (where H equals zeroduring this iteration) (step 160). Next, the histogram routinedetermines if the difference is greater than the maximum differenceparameter which at this time equals zero and also greater than theminimum significant parameter--MINACC (step 162). MINACC was specifiedin step 100 and is the minimum difference between two successive "bars"in the ordered histogram large enough to be considered as separating thepreceding mundane pixels from the succeeding information pixels. If bothconditions are true, then the histogram routine sets the maximumdifference parameter--MAXXDIFF equal to the difference determined instep 160 and the chopping point equal to one. This indicates that thefirst bar represents mundane/background information. Or, if theconditions of decision 162 were not satisfied, the histogram routineincrements the parameter H to equal one (step 166) and loops back tostep 160 (assuming that the preceding "bar" was not the last in thehistogram) (step 168). Steps 160-164 are now repeated for the second andthird "bars" in the histogram. If the difference computed between thecounts of the second and third "bars" is greater than the minimumsignificant difference--MINACC and greater than the current value ofMAXDIFF, i.e. zero or the difference between the first and second "bars"if greater than MINACC, then the MAXDIFF variable is updated with thedifference between the counts of the second and third "bars" and theCHOPPOINT variable is updated with H=2 (because H=1 at this point). Thisindicates that the first and second "bars" represent mundane/backgroundinformation. Steps 160-164 are then repeated for successive pairs of"bars" in order until all the "bars" in the SEARCHLEN have beenconsidered. The final effect of the iterations of steps 160-164 is todetermine the "bar" location where the greatest decrease has occurred incount value from the preceding "bar". Assuming, the decrease is greaterthan MINACC, this data is stored as the final chopping point.

Next, the histogram routine initializes a weight variable equal to oneand reinitializes the "bar" variable H equal to zero (step 180). Next,the histogram routine determines if the chopping point parameter isgreater than the current value of H, in which case, the current "bar"lies before the chopping point (step 182). Assuming this is the case forthe first "bar", the histogram routine decreases the weight parameter bythe ratio of the count for the first "bar" to the total number of pixelsin the image (which was previously known) (step 184). This has theeffect of reducing the weight parameter by the amount of mundane oruninteresting information in the image represented by the first "bar".Steps 182 and 184 are repeated for all other "bars" ordered before thechopping point with the result that the final weight parameter for theimage is reduced by the total amount of mundane or uninterestinginformation in the image.

After completing the last iteration of steps 184 and 182, the histogramroutine returns to step 200 of the display time converter program ofFIG. 2. In step 200, the histogram routine stores a weight value W(K)for the current image equal to the value of the final weight variable ofstep 184 FIG. 3(c). Then, the display time converter program determinesif there are any more stored images to be analyzed (decision 202), andif so, increments the image parameter K and begins another iteration ofsteps 106, 108 and 200 (step 204). After the final weight values for allof the images are determined, the display time converter program 30determines the display duration for each image (step 210). As describedin more detail below, this is based on the weight value of each imagecompared to the total weight values of all the images in the videopresentation, although minimum and maximum display duration limits maybe enforced.

Step 210 of FIG. 2 is illustrated in more detail beginning with step 220of FIG. 4(a) in cases where the user elects to use clipping to enforcethe minimum and maximum display duration limits specified in step 100.In step 220 of FIG. 4(a), the display time converter program 30determines the maximum and minimum weights of the images and the totalof the weights of all images. Next, the converter program re-initializesthe image variable K to one (step 222) and determines the display timefor the first image as the weight of the first image times the totaldisplay time for all images specified by the user divided by the weightof all images (step 226). Next, the converter program determines if thedisplay time determined in step 226 is less than the user specifiedminimum--MINDISP (step 230). If so, then the converter program sets thedisplay time equal to the specified minimum (step 236). Next, or if thedisplay time determined in step 226 was not less than the specifiedminimum, the converter program proceeds to step 238 to determine if thedisplay time determined in step 226 is greater than the maximumspecified display time--MAXDISP. If so, the converter program sets thedisplay time equal to the specified maximum (step 240). Next, or if thedisplay time determined in step 226 is not greater than the maximum, theconverter program proceeds to step 242 to increment the image parameterK. If this is not the last image (decision 244), the converter programloops back to step 226 to determine the display time of the second imagein the manner described above. Then, the converter program repeats steps230-242 to enforce the minimum and maximum display time limits for thesecond image. Steps 226 and 230-242 are repeated for all other images,and then the histogram routine jumps to step 302 of FIG. 6(a) asdescribe below.

Step 210 of FIG. 2 is illustrated in more detail beginning with step 250of FIG. 5 in cases where the user desires to enforce with re-scalingrather than clipping the minimum and maximum display duration limitsspecified in step 100. In step 250, the converter program determines themaximum and minimum weights of all the images. Then, the converterprogram initializes the image parameter K to one (step 252). Next, instep 254, the converter program determines the display time for thefirst image as ((weight of the first image)--(minimum weight))((specified maximum display time)--(specified minimum displaytime))/((maximum weight)--(minimum weight))+(specified minimum displaytime). Basically, the display time equals the weight, rescaled so thatthe image with the least weight gets the minimum display time MINDISP,and the image with the greatest weight gets the maximum display timeMAXDISP. The display times corresponding to the other weights then fallbetween MINDISP and MAXDISP. Step 254 is repeated for all other images(decision 256 and step 257). After the display times for all images havebeen determined according to step 254, the converter program proceeds tostep 302 of FIG. 6(a).

In step 302, the converter program begins a process to ensure that thesum of the display durations determined in either FIG. 4(a,b) or FIG. 5is substantially equal to the total display time specified by the userin step 100. The process diagramed in FIG. 6 is optional--the user maynot care whether the sum of the display durations equals the totaldisplay time specified. But without it, the sum of the display durationsis only guaranteed to lie between N*MINDISP and N*MAXDISP. Skipping thetiming adjustments done in the algorithm shown in FIG. 6 may beaccomplished by setting ERROR to be very large. To begin the process,the converter program initializes a total time variable--TOTTIME to zeroand the image variable K to one (step 302). Next, the converter programbegins to sum the display times., determined in FIG. 4(a,b) or FIG. 5,of the images by setting the total time variable equal to the displayduration determined in FIGS. 4(a,b) or 5 for the first image (step 304).Because this is not the last image in the presentation (decision 306),the converter program repeats step 304 for all other images. Whencompleted, the total time variable equals the total display time of allthe images in the video presentation as determined in FIG. 4(a,b) orFIG. 5. Then, the converter program determines if the total presentationtime determined in the multiple iterations of step 304 is close enoughto the specified total presentation time, i.e. a difference less thanthe user specified ERROR paramenter (decision 308). If so, then theconverter program has completed its display time calculations and passesthe display times and control to the video controller. However, if theactual total display time is not close enough to the specified totaldisplay time, then the converter program determines a display timeadjustment--DELTA which equals the difference divided by the totalnumber of images minus one (step 310). The adjustment--DELTA can bepositive or negative. Then, the converter program re-initializes theimage parameter K (step 312) and sets the display duration for the firstimage equal to that of the first image determined in FIGS. 4(a,b) or 5plus DELTA (step 320). Next, the histogram routine determines if theresult is greater than the specified maximum display time--MAXDISP(decision 322), and if so, reduces the result to the specified maximumdisplay time (step 324). After step 324 or if the result was not greaterthan the specified maximum display time, the converter programdetermines if the adjusted display time for the first image is less thanthe specified minimum display time (decision 330), and if so increasesthe current display time for the first image to the specified minimumdisplay time (step 332). After step 332 or if the display time exigentjust before step 330 was not less than the minimum specified displaytime, then the converter program jumps to step 340 of FIG. 6(a) to beginto sum the total display time by setting the total display time--TOTTIMEvariable equal to the current display time of the first image. Becausethe current image is not the last in the presentation (decision 342),the histogram routine repeats steps 320-342 for the remaining images.The result is that each of the display times determined in FIGS. 4(a,b)or 5 has been increased or each has been decreased as necessary to makethe total actual display time better approximate the user specifiedtotal display time.

However, because the specified maximum and minimum display times areenforced in steps 320-332, the first N iterations of steps 308-342 (forall N images) may not be sufficient to cause the total actual displaytime to approximate the specified total display time with sufficientaccuracy as revealed in decision 308. In such a case, decision 308 willlead to steps 310 and 312, and another N iterations of steps 320-342(for all N images). Additional sets of N iterations of steps 320-342with the intervening adjustment of DELTA at step 310, may be requireduntil the total actual display time approximates the specified totaldisplay time within the specified error.

FIG. 7 illustrates in detail another embodiment of the image analyzerprogram 24, called a "compression analysis" routine. In general terms,the compression routine determines the amount of information in an imageby compressing the digitized image and then determining the size of theresultant file. The greater the size, the greater the informationcontent of the image and vice versa. The compression analysis routine isespecially useful for pictorial images and also useful, but to a lesserdegree, for graphic and alphanumeric images. First, the compressionroutine initializes a parameter "K" to represent the first image (step400). Next, the compression routine determines the number of bytes ofthe first image before compression by subtracting the beginning addressof the file storing the uncompressed image from the end address of thefile (step 402). Next, the compression routine performs a digitalcompression of the first image (step 404). There are a variety of knowncompression techniques that will suffice. The preferred compressiontechnique is Huffman Coding, a lossless compression method. Huffmancoding is implemented by first getting an approximately decorrelatedrepresentation of the image by some method such as pixel-to-pixeldifferencing, then assigning code words of various lengths to all thepossible values obtainable. The assignment of code words is done in sucha way as to minimize the entropy of the resulting code words. This isaccomplished by treating the frequency of each possible value in thedecorrelated representation as a probability and building a treesuccessively combining the lowest two probabilities until all arecombined. Then the code words are derived by working backwards withinthe tree, assigning 1 to each left branch and 0 to each right branch (orvice versa) to find the code word for each leaf. Huffman coding isdescribed in detail in chapter 5 of Digital Picture Processing, 2ndedition, Volume 1, by Rosenfeld, Azriel and Avinash, C. Kak, AcademicPress, Inc., Orlando, Fla., 1982, which is hereby expressly incorporatedby reference as part of the present disclosure. Next, the compressionanalysis routine determines the number of bytes of the compressed imageby subtracting the beginning address of the file storing the compressedimage from the end address of the file (step 406). Next, the compressionanalysis routine determines the image weight as the ratio of thecompressed size to the uncompressed size (step 408). Next, thecompression analysis routine increments the image parameter K (step410), and assuming there are other images in the presentation (decision412), loops back to step 402 to perform the same analysis for the secondimage. After the weights of all the images in the presentation aredetermined according to multiple iterations of steps 402-408, thecompression analysis routine returns to step 200 of FIG. 2. Then, theimage analyzer 24 completes steps 204-200 as described above and thenproceeds to the display time converter 30 as described above.

FIG. 8 illustrates in detail another embodiment of the image analyzerprogram 24, called a "character recognition analysis" routine. Ingeneral terms, the character recognition routine determines the amountof information in an image by counting the number of alphanumericcharacters in the digitized image. The weight is proportional to thenumber of characters. The character recognition routine is useful forimages of alphanumeric text and data. First, the character recognitionroutine initializes a parameter "K" to represent the first image (step450). Next, the character recognition routine determines the number ofalphanumeric characters in the first image (step 452). There are avariety of known techniques for recognizing alphanumeric characters. Forexample, that disclosed in U.S. Pat. No. 5,303,311 by Epting, et al.which patent is hereby incorporated by reference as part of the presentdisclosure. After recognizing the characters, the character recognitionroutine counts them and sets the weight for the image equal to the count(step 454). Next, the character recognition routine increments the imageparameter K (step 456), and assuming there are more images in thepresentation (decision 460), repeats steps 452 and 454 for the secondimage. Steps 452-460 are repeated for all images in the presentation,and then the character recognition routine returns to step 200 of FIG.2. Then, the image analyzer 24 completes steps 204-200 as describedabove and then proceeds to the display time converter 30 as describedabove.

FIG. 9 illustrates in detail another embodiment of the image analyzerprogram 24, called a "graphic primitive recognition analyzer" routine.In general terms, the graphic primitive recognition routine determinesthe amount of information in an image by counting the number of graphicprimitives, i.e. alphanumeric characters and predetermined symbols,shapes and geometric configurations in the digitized image. The weightis proportional to the number of graphic primitives. The graphicprimitive recognition routine is useful for images of alphanumeric textand data and predetermined symbols, shapes and geometric configurations.First, the character recognition routine initializes a parameter "K" torepresent the first image (step 470). Next, the character recognitionroutine determines the number of graphic primitives in the first image(step 472). There are a variety of known techniques for recognizing thegraphic primitives. For example, use the unformatted object data for theimage and count the number of alphanumeric characters to be formattedand the number of formatting control words. After recognizing thegraphic primitives, the primitive recognition routine counts them andsets the weight for the image equal to the count (step 472). Next, thegraphic primitive recognition routine, increments the image parameter K(step 474), and assuming there are more images in the presentation(decision 476), repeats steps 472 thru 476 for the second image. Steps472-476 are repeated for all images in the presentation, and then thegraphic primitive recognition routine returns to step 200 of FIG. 2.Then, the image analyzer 24 completes steps 204-200 as described aboveand then proceeds to the display time converter 30 as described above.

Based on the foregoing, a computer system for determining display timesof video images has been disclosed. However, numerous modifications andsubstitutions can be made without deviating from the scope of thepresent invention. For example, rather than using a lossless compressionscheme as used in FIG. 7 and obtaining the image weights based on theratio of compressed to uncompressed sizes a lossy compression schemesuch as the discrete cosine transform-based method described in U.S.Pat. No. 4,780,761 by Daly et al. can be used. The weightings could bechosen to be inversely proportional to some measure, such as mean squareerror, of the difference between the original and thecompressed/decompressed version of each image. An example of amodification is to include defined weightings for different types ofgraphic primitives when using the method in FIG. 9. For instance, eachformatting command could be counted the same as forty-seven characters.Therefore, the present invention has been disclosed by way ofillustration and not limitation and reference should be made to thefollowing claims to determine the scope of the present invention.

We claim:
 1. A system for determining display durations of each of a plurality of images in a presentation, said system comprising:means for determining an information content of each of said images; and means for determining for each of said images a display duration based on a respective amount of the information content in the image; and wherein the display duration determining means enforces a minimum and maximum limit for the display duration of each of said images.
 2. A system as set forth in claim 1 further comprising means for receiving specification of a total presentation time for all of said images and wherein the display duration determining means determines the display durations of each of said images based on the information content of the respective image, said minimum and maximum limit and said total presentation time.
 3. A system for determining display durations of each of a plurality of images in a presentation, said system comprising:means for determining an information content of each of said images; means for determining for each of said images a display duration based on a respective amount of the information content in the image; and means for receiving specification of a total presentation time for all of said images and wherein the display duration determining means determines the display durations of each of said images based on the information content of the respective image and said total presentation time.
 4. A system for determining display durations of each of a plurality of images in a presentation, said system comprising:means for determining an information content of each of said images; and means for determining for each of said images a display duration based on a respective amount of the information content in the image; and wherein the display time determining means determines for each image the number of pixels at each of a multiplicity of respective pixel levels, and determines the total number of pixels at one or more pixel levels for which the respective number(s) of pixels are significantly larger than the numbers of pixels at other pixel levels.
 5. A system as set forth in claim 4 wherein the display time determining means determines the information content of each image based on the total number of pixels at said other pixel levels such that the total number of pixels at said one or more pixel levels are considered as having relatively little information content.
 6. A system for determining display durations of each of a plurality of images in a presentation, said system comprising:means for determining an information content of each of said images; and means for determining for each of said images a display duration based on a respective amount of the information content in the image; and wherein the display time determining means determines for each image the number of pixels at each of a multiplicity of pixel levels, determines an order of pixel values based on descending order of the numbers of respective pixels at said pixel values, and determines the pixel value whose count is less than the count of the preceding pixel value by at least a predetermined amount.
 7. A system as set forth in claim 6 wherein the display time determining means determines information content based on a number of pixels represented by pixel values after said preceding pixel value.
 8. A method for determining display durations of each of a plurality of images in a presentation, said method comprising the steps of:determining an information content of each of said images; and determining for each of said images a display duration based on a respective amount of the information content in the image; and wherein the display duration determining step enforces a minimum and maximum limit for the display duration of each of said images.
 9. A method as set forth in claim 8 further comprising the step of receiving specification of a total presentation time for all of said images and wherein the display duration determining step determines the display durations of each of said images based on the information content of the respective image, said minimum and maximum limit and said total presentation time.
 10. A method for determining display durations of each of a plurality of images in a presentation, said method comprising the steps of:determining an information content of each of said images; determining for each of said images a display duration based on a respective amount of the information content in the image; and receiving specification of a total presentation time for all of said images and wherein the display duration determining step determines the display durations of each of said images based on the information content of the respective image and said total presentation time.
 11. A method for determining display durations of each of a plurality of images in a presentation, said method comprising the steps of:determining an information content of each of said images; and determining for each of said images a display duration based on a respective amount of the information content in the image; and wherein the display time determining step determines for each image the number of pixels at each of a multiplicity of respective pixel levels, determines the total number of pixels at one or more pixel levels for which the respective number(s) of pixels are significantly larger than the numbers of pixels at other pixel levels.
 12. A method as set forth in claim 11 wherein the display time determining step determines the information content of each image based on the total number of pixels at said other pixel levels such that the total number of pixels at said one or more pixel levels are considered as having relatively little information content.
 13. A method for determining display durations of each of a plurality of images in a presentation, said method comprising the steps of:determining an information content of each of said images; and determining for each of said images a display duration based on a respective amount of the information content in the image; and wherein the display time determining step determines for each image the number of pixels at each of a multiplicity of pixel levels, determines an order of pixel values based on descending order of the numbers of respective pixels at said pixel values, and determines the pixel value whose count is less than the count of the preceding pixel value by a predetermined amount.
 14. A method as set forth in claim 13 wherein the display time determining step determines information content based on a number of pixels represented by pixels values after said preceding pixel value. 